In 2024, the latest version, 0.2, of eDNAjoint underwent a rigorous peer-review process and received approval from Creating the package involved broadening the models applicability by allowing for various parameters, incorporating pre-compiled Bayesian models written in Stan, and adding supplementary functions that assist in interpreting model outputs. A crucial part of this endeavor has been generating a user guide aimed at making the package user-friendly and accessible to a wide range of researchers.

How do you use eDNAjoint?

The eDNAjoint package is specifically designed for interpreting observations from paired or semi-paired environmental DNA and traditional survey data. It employs a Bayesian model that seamlessly integrates these two data streams to jointly estimate model parameters. Optional variations within the package allow the inclusion of site-level covariates, which can scale the sensitivity of eDNA sampling in relation to traditional sampling methods. Furthermore, the package accommodates varied traditional survey techniques that may yield different catch efficiencies.

For instance, below is an example of how to fit the joint model to data collected from paired, replicated eDNA qPCR and seine sampling observations of the endangered tidewater goby (Eucyclogobius newberryi), based on a study conducted by Schmelzle and Kinziger in 2016:

library(eDNAjoint)data(goby_data)  # run the joint model with two covariatesgoby_fit <- joint_model(data = goby_data, cov = c("Filter_time", "Salinity"), family = "poisson", p10_priors = c(1, 20), q = FALSE)

This model fit enables users to summarize the posterior distribution for the probability of false positive detections:

joint_summarize(goby_fit$model, par = "p10")

Additionally, the package allows users to calculate the number of eDNA and traditional survey samples required to achieve a specified probability of detecting the presence of a species:

detect_calculate(goby_fit$model, mu = c(0.1, 0.5, 1), cov_val = c(0, 0), probability = 0.9)

Call to Action

While I have received invaluable assistance from colleagues and mentors along the journey, the development of eDNAjoint has primarily been a solo project. This independence has been empowering, yet if the software is to grow further, I welcome collaboration. There are numerous ideas for expansion, and I envision partnerships in various forms.

Are you proficient with Stan? Collaborations could lead to better handling of missing data within the package. Do you possess expertise in the eDNA realm? We can enhance the model's infrastructure, such as adding levels of hierarchy that could leverage negative control data to inform the probability of false positive detections. Moreover, we could create functionality that accommodates continuous eDNA data, as opposed to just binary data, and possibly include metabarcoding data, allowing for a model that caters to multiple species.

Do you have a knack for simplifying complex statistical concepts? The model utilizes a Bayesian framework, and understanding Bayesian statistics along with Markov Chain Monte Carlo (MCMC) methods is beneficial for users. I anticipate a diverse user base, including those who may not have extensive statistical knowledge. Thus, enhancing the user guide to ensure accessibility is vital.

I have greatly benefited from being part of the rOpenSci community and value the software peer review process. I am eager to establish eDNAjoint as a hub for individuals interested in contributing to rOpenSci initiatives.

If you are interested in collaborating on this project, please feel free to open an issue on